package com.xiaobao.campusLostFoundAfter.service.impl;

import com.xiaobao.campusLostFoundAfter.mapper.AuditRecordMapper;
import com.xiaobao.campusLostFoundAfter.pojo.AuditRecord;
import com.xiaobao.campusLostFoundAfter.service.AuditRecordService;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class AuditRecordServiceImpl implements AuditRecordService {
    private final AuditRecordMapper auditRecordMapper;

    public AuditRecordServiceImpl(AuditRecordMapper auditRecordMapper) {
        this.auditRecordMapper = auditRecordMapper;
    }

    //添加审核记录
    @Override
    public List<AuditRecord> getAllAuditRecords() {
        return auditRecordMapper.getAllAuditRecords();
    }

    //根据物品类型获取审核记录
    @Override
    public List<AuditRecord> getAuditRecordsByItemType(Integer itemType) {
        return auditRecordMapper.selectByItemType(itemType);
    }

    //根据审核人id获取审核记录
    @Override
    public List<AuditRecord> getAuditRecordsByAuditorId(String auditorId) {
        return auditRecordMapper.selectByAuditorId(auditorId);
    }

    //根据物品id获取审核记录
    @Override
    public List<AuditRecord> getAuditRecordsByItemId(Integer itemId) {
        return auditRecordMapper.selectByItemId(itemId);
    }

    //根据物品类型和审核人id获取审核记录
    @Override
    public List<AuditRecord> getAuditRecordsByItemTypeAndAuditorId(Integer itemType, String auditorId) {
        return auditRecordMapper.selectByItemTypeAndAuditorId(itemType, auditorId);
    }

    //根据审核状态获取审核记录
    @Override
    public List<AuditRecord> getAuditRecordsByStatus(Integer status) {
        return auditRecordMapper.selectByStatus(status);
    }

    //添加审核记录
    @Override
    public int addAuditRecord(AuditRecord auditRecord) {

        return auditRecordMapper.insert(auditRecord);
    }

    //修改审核记录
    @Override
    public int updateAuditRecord(AuditRecord auditRecord) {
        return auditRecordMapper.update(auditRecord);
    }
}
